/**
 *
 */
package com.block.common.security.service.sign;

import com.alibaba.fastjson.JSONObject;
import com.block.common.security.service.AppSignMannerService;
import com.block.common.security.service.factory.SignFactory;
import com.block.db.entity.AppEncrypt;

import java.util.Map;


/**
 * 
 * 第一版签名加密方式
 */
public class DefaultSignEncryptService extends AppSignMannerService {
//	private static final Logger log = Logger.getLogger(FirstVersionSignEncryptService.class);

	/**
	 * 签名
	 * 第一版直接返回json
	 * @param appEncrypt
	 * @param tranData
	 * @param randomKey
	 * @return
	 * 2016年10月12日 上午10:42:57
	 */
	@Override
	public String sign(AppEncrypt appEncrypt, String tranData, String randomKey) {
		return tranData;
	}

	/**
	 * 验签
	 * @param appEncrypt
	 * @param ciphertext
	 * @param reqSignStr
	 * @param tranData
	 * @return
	 * 2016年10月12日 上午10:27:44
	 */
	@Override
	public boolean validateSign(AppEncrypt appEncrypt, String reqSignStr, Map<String, Object> reqMap, String ciphertext, JSONObject tranData) {
		boolean isSign = appEncrypt.getIsSign().equals(SignFactory.IS_SIGN);
//		if (isSign)
//		{
//			String desKey = appEncrypt.getDesKey();
//			String signKey = appEncrypt.getSignKey();
//			String signFinal = "";
//			try {
//				//3DES解密KEY
//				String desKeyDecoded = EncDecUtil.dec(desKey, ciphertext);
//				HmacHanlder hmacHanlder = new HmacHanlder(signKey);
//				//签名
//				//HMAC-SHA256(appID + [六位随机大小写字母加随机数字(int)])
//				signFinal = hmacHanlder.encrypt(appEncrypt.getAppId() + desKeyDecoded);
//				return reqSignStr.equals(signFinal);
//			} catch (Exception e) {
////				log.error("【验签出现异常】【ciphertext】" + ciphertext + "【reqSignStr】" + reqSignStr, e);
//				e.printStackTrace();
//				return false;
//			}
//		}
		return true;
	}



}
